home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / cross / GBDK-2.0.lha / GBDK / lib / sprintln.c < prev    next >
C/C++ Source or Header  |  1998-10-01  |  431b  |  23 lines

  1. #include <stdio.h>
  2.  
  3. /* Print a long number in any radix */
  4.  
  5. extern char *digits;
  6.  
  7. UBYTE sprintln(char *s, WORD number, BYTE radix, BYTE signed_value)
  8. {
  9.   UWORD l;
  10.   UBYTE pos = 0;
  11.  
  12.   if(number < 0 && signed_value) {
  13.     putchar('-');
  14.     number = -number;
  15.   }
  16.   if((l = (UWORD)number / (UWORD)radix) != 0)
  17.     pos = sprintln(s, l, radix, UNSIGNED);
  18.   s[pos++] = digits[(UWORD)number % (UWORD)radix];
  19.   s[pos] = 0;
  20.  
  21.   return pos;
  22. }
  23.